The present invention relates in general to network communications of processing systems. More particularly, the invention relates to techniques for effecting communications between a network and multiple partitions of a data processing system employing a host-network interface.
Mainframe class data processing systems have hardware and software facilities that enable partitioning thereof. Such processing systems may be subdivided into multiple partitions whereby a user of a partition, or software executing in a partition, has the impression that the processing system is exclusively used by that application. Each partition has the appearance of being a separate and distinct processing system and may even run its own multi-tasking and multi-user operating systems independent from each other partition. An IBM Enterprise Systems Architecture (xe2x80x9cESAxe2x80x9d)/390 Mainframe Computer is an example of one such partitionable mainframe class data processing system. Partitioning thereof is described in, for example, various publications by International Business Machines Corporation, including xe2x80x9cIBM ESA/390 Principles of Operationxe2x80x9d, IBM Publication No. SA22-7201-02, December 1994, and in the xe2x80x9cIBM Enterprise System/9000 Processor Resource/Systems Manager Planning Guidexe2x80x9d, IBM Publication No. GA22-7123-11 (April 1994), which are both hereby incorporated herein by reference in their entirety.
Software executing in individual partitions within the mainframe class data processing system may require a network connection such as a local area network (xe2x80x9cLANxe2x80x9d) connection or a wide area network (xe2x80x9cWANxe2x80x9d) connection. This may be used to facilitate connectivity to users, or to application programs used in, for example, a client-server processing environment. Shown in FIG. 1 is a conventional configuration used to connect individual partitions, including the software running therein, to a LAN. The configuration includes a processing system 11 that has partitions 13, 15, 17, 19, 20 and 21.
Network connectivity for each partition of system 11 of FIG. 1 is achieved using separate network interfaces for each partition. For example, partition 13 is conventionally connected through channel connection 29 to an IBM 3172 Interconnect Controller 23 (with 8232 Channel Interface Attachment) that has, for example, a token ring or Ethernet LAN port 32 attached to LAN 37 thereby providing LAN connection 31. Network connectivity is accordingly directly provided between partition 13 and computers 43 and 45 on LAN 37 through the IBM 3172 23. However, according to conventional techniques, this configuration has no other direct logical or physical connections from any of the other partitions to LAN 37. To further note, each application within partition 23 must communicate with a different network port on IBM 3172 23. The IBM 3172 (having internal 8232 Channel Interface Attachment), is described in a publication entitled xe2x80x9c8232 LAN Channel Stationxe2x80x9d, Apr. 15, 1998, IBM Publication No. ZZ25-8577-0, that is incorporated herein by reference in its entirety.
The conventional software executing on IBM 3172s restricts direct logical connectivity to being between a single partition and its corresponding LAN. Thus, to facilitate direct connectivity from a computer 47 on a LAN 39 to both partition 17 and 21, multiple IBM 3172s would traditionally be used. Partition 17 is coupled to LAN 35 via channel connection 29xe2x80x2, IBM 3172 25 and LAN port 34 thereby establishing LAN connection 33. Similarly, partition 21 is coupled to LAN 39 via channel connection 29xe2x80x3, IBM 3172 27, and LAN port 35 thereby establishing LAN connection 36.
The conventional host-to-network connectivity techniques discussed above have several limitations. Connectivity between a single network (i.e., LAN or WAN) and multiple partitions require the use of multiple interfaces therebetween such as, for example, multiple IBM 3172s. Further, each application executing in a single partition must use a different port on the IBM 3172 corresponding to the single partition.
An enhanced network interface for a mainframe class data processing system having multiple partitions and a port to a network is described in commonly assigned U.S. Pat. No. 5,740,438, which is hereby incorporated herein by reference in its entirety. Briefly summarized, this patent describes establishing a table which defines communications paths between the port to the network and at least two partitions of the multiple partitions. More specifically, each partition has at least one application executing therewithin and the communications paths are defined thereto. Data frames are passed between the network and the applications within the partitions through the port to the network and along the communications paths defined in the table such that the network communications is effected.
One embodiment of the network interface approach of U.S. Pat. No. 5,740,438 is depicted in FIG. 2. Shown is a partitionable mainframe class data processing system 11 (e.g., an IBM Enterprise System/9000) having an integral host-to-network interface (xe2x80x9cHNIxe2x80x9d) 51 that facilitates a LAN connection 55 from multiple partitions 13, 15, 17, 19, 20 and 21 to LAN 53 through LAN port 54. Each application in each partition may directly communicate with computers 61, 63 and 65 on LAN 53 through the single host-to-network interface 51 and single LAN port 54. The LAN shown is a token ring LAN; however, the system is equally applicable to other types of LANs such as, for example, Ethernet and Fiber Distributed Data Interface (xe2x80x9cFDDIxe2x80x9d). Further, the host-to-network interface may support multiple network connections by way of multiple network ports. For example, a WAN connection 57 comprising, for example, a Peer-to-Peer Protocol (xe2x80x9cPPPxe2x80x9d) connection may be established to a computer 59 through WAN port 56. Any mix of LAN and WAN connections among multiple ports of host-to-network interface 51 is possible.
The host-to-network connectivity techniques described above have certain limitations, particularly in an Ethernet environment where two different frame types are possible, i.e., Ethernet DIX and Ethernet 802.3. For client/server systems, Transmission Control Protocol (TCP)/Internet Protocol (IP) has become the leading protocol for network communications. Using Ethernet, when a client application running over TCP/IP wants to communicate with a server application, the application must specify one of the two existing Ethernet frame formats. The frame format must also be known by the server machine in order for the TCP/IP connection to be established and any data transfer to occur. Conventionally, in order to make sure that the client and server communicate using the same Ethernet frame formats, both the client and server must specify the specific frame format to be used in their appropriate configuration files. If the configuration files do not match, then the client/server application will not work properly.
The most common server TCP/IP environment today has the complete TCP/IP functionality on one platform. For example, reference xe2x80x9cTCP/IP Tutorial and Technical Overview,xe2x80x9d IBM Document No. GG24-3376-03 (December 1992). In this environment, one device driver exists in each partition for each LAN connection. Each device driver can specify a different Ethernet frame format, but will not support both frame formats. Thus, a different device driver is used for each of the two frame formats. In operation, a dedicated device driver of a partition of the host system takes care of providing both channel headers and media or LAN headers necessary for transmission of an IP packet across the LAN to a client coupled thereto. Again, however, this dedicated device driver is configured to function with one particular type of LAN, and with respect to Ethernet, one particular frame format.
With the above as background, the present invention is directed to enhancements to the state-of-the-art of network communications of multiple partitions employing a host-network interface.
Briefly summarized, the present invention comprises in one aspect a method of network communications implemented within a host-network interface for use in a mainframe class data processing system having multiple partitions, and a port to a network. This method includes: saving at the host-network interface an internet protocol (IP) address for at least one of the multiple partitions of the mainframe class data processing system; generating an IP datagram at a first partition of the multiple partitions to be forwarded to a second partition of the multiple partitions using a destination IP address; and determining whether the destination IP address for the IP datagram comprises a saved IP address at the host-network interface of the at least one partition of the mainframe class data processing system, and if so, forwarding the IP datagram directly from the first partition to the second partition without employing the network.
Systems and computer program products corresponding to the above-summarized method are also described and claimed herein.
Network communications in accordance with the principles of the present invention provides numerous advantages over the existing art for a mainframe class data processing system having a port coupled to a network. For example, reduced configuration information is required at the host system since the user application does not have to specify the network type in the host configuration. In one aspect, this is accomplished by providing a technique for dynamically determining an Ethernet frame format at the communications adapter of the host-network interface coupling the host system to the network. Further, in accordance with this invention, only one common non-network specific channel device driver is needed at each logical partition of the host system, and one network, e.g., LAN, device driver at each port of the network adapter. Less internet protocol addresses are therefore needed for host connections to the network. Advantageously, one single IP address within a partition can be used to communicate with any number of different networks, e.g., token ring, Ethernet DIX or Ethernet 802.3. This contrasts with existing configurations, wherein for each unique network type, and for each Ethernet frame type, a different IP address must be specified within the partition. Further, partition-to-partition traffic is facilitated herein without requiring a network connection to route an internet protocol (IP) datagram from a first logical partition to a second logical partition of the host data processing system.